package com.gdust.hzx.feign.product;

import com.gdust.hzx.model.entity.product.ProductSku;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;

/**
 * ClassName: ProductFeignClient
 * Package: com.gdust.hzx.feign.product
 * Description:
 * 该接口用于定义与 service-product 微服务的远程调用。通过使用 Feign 客户端，它简化了跨服务的 HTTP 请求，
 * 实现了与产品相关的操作，特别是通过 SKU ID 获取产品信息。
 *
 * @Author syun
 * @Create 2024/12/27 14:50
 * @Version 1.0
 */
@FeignClient(value = "service-product")
public interface ProductFeignClient {
    /**
     * 根据 SKU ID 获取产品信息
     *
     * 该方法通过指定的 SKU ID 从 service-product 微服务中获取产品的详细信息，返回的是一个 ProductSku 对象。
     *
     * @param skuId 商品的 SKU ID
     * @return 返回对应的 ProductSku 对象，包含该 SKU 对应的商品信息
     */
    @GetMapping("/api/product/getBySkuId/{skuId}")
    public abstract ProductSku getBySkuId(@PathVariable Long skuId) ;

}
